//Documento JavaScript para realizar las validaciones de los formularios antes de enviarlos al Servidor.

//Funcion para validar los campos del login
function validarFormLogin()
{
    //Comprueba que no esta vacio ni tiene espacios el campo username
    if(document.getElementById("username").value.length==0 || /^\s+$/.test(document.getElementById("username").value))
    {
        document.getElementById("errorUser").style.display="inline";
        document.getElementById("username").focus();
        return false;
    }
    else
    {
        document.getElementById("errorUser").style.display="none";
    }
    
    //Comprueba que no esta vacio ni tiene espacios el campo password
    if(document.getElementById("password").value.length==0 || /^\s+$/.test(document.getElementById("password").value))
    {
        document.getElementById("errorPass").style.display="inline";
        document.getElementById("password").focus();
        return false;
    }
    else
    {
        document.getElementById("errorPass").style.display="none";
    }
    
    document.loginForm.submit();
}

//Funcion para validar los campos del login
function validarAgregarConcierto()
{
    //Comprueba que no esta vacio el campo descripcion
    if(document.getElementById("descripcion").value.length==0)
    {
        document.getElementById("errorDescripcion").style.display="inline";
        document.getElementById("descripcion").focus();
        return false;
    }
    else
    {
        document.getElementById("errorDescripcion").style.display="none";
    }
    
    //Comprueba que no esta vacio el campo genero
    if(document.getElementById("genero").value.length==0)
    {
        document.getElementById("errorGenero").style.display="inline";
        document.getElementById("genero").focus();
        return false;
    }
    else
    {
        document.getElementById("errorGenero").style.display="none";
    }
    
    //Comprueba que no esta vacio el campo lugar
    if(document.getElementById("lugar").value.length==0)
    {
        document.getElementById("errorLugar").style.display="inline";
        document.getElementById("lugar").focus();
        return false;
    }
    else
    {
        document.getElementById("errorLugar").style.display="none";
    }
    
    //Comprueba que no este vacio el campo aforo y que si no es asi, se haya introducido un numero
    if (document.getElementById("aforo").value.length==0)
    {
        document.getElementById("errorAforo").innerHTML="Campo vac&iacute;o";
        document.getElementById("errorAforo").style.display="inline";
        document.getElementById("aforo").focus();
        return false;
    }
    else if(document.getElementById("aforo").value.length!=0)
    {
        valor = parseInt(document.getElementById("aforo").value);
        if (isNaN(valor) || valor<=0)
        {
            document.getElementById("errorAforo").innerHTML="Dato err&oacute;neo";
            document.getElementById("errorAforo").style.display="inline";
            document.getElementById("aforo").focus();
            return false;
        }
        else
        {
            document.getElementById("errorAforo").style.display="none";
        }
    }
    //Comprueba que no este vacio el campo precio y que si no es asi, se haya introducido un numero
    if (document.getElementById("precio").value.length==0)
    {
        document.getElementById("errorPrecio").innerHTML="Campo vac&iacute;o";
        document.getElementById("errorPrecio").style.display="inline";
        document.getElementById("precio").focus();
        return false;
    }
    else if(document.getElementById("precio").value.length!=0)
    {
        valor = parseInt(document.getElementById("precio").value);
        if (isNaN(valor) || valor<=0)
        {
            document.getElementById("errorPrecio").innerHTML="Dato err&oacute;neo";
            document.getElementById("errorPrecio").style.display="inline";
            document.getElementById("precio").focus();
            return false;
        }
        else
        {
            document.getElementById("errorPrecio").style.display="none";
        }
    }
    document.newConcertForm.submit();
}

//Funcion para validar los campos del registro
function validarFormRegistro()
{
    //Comprueba que no esta vacio ni tiene espacios el campo username
    if(document.getElementById("username").value.length==0 || /^\s+$/.test(document.getElementById("username").value))
    {
        document.getElementById("errorUser").style.display="inline";
        document.getElementById("username").focus();
        return false;
    }
    else
    {
        document.getElementById("errorUser").style.display="none";
    }
    
    //Comprueba que no esta vacio ni tiene espacios el campo password
    if(document.getElementById("password").value.length==0 || /^\s+$/.test(document.getElementById("password").value))
    {
        document.getElementById("errorPass").style.display="inline";
        document.getElementById("password").focus();
        return false;
    }
    else
    {
        document.getElementById("errorPass").style.display="none";
    }
    
    //Comprueba que no esta vacio ni tiene espacios el campo repeatPassword
    if(document.getElementById("repeatPassword").value.length==0 || /^\s+$/.test(document.getElementById("repeatPassword").value))
    {
        document.getElementById("errorRepeatPass").style.display="inline";
        document.getElementById("repeatPassword").focus();
        return false;
    }
    else
    {
        document.getElementById("errorRepeatPass").style.display="none";
    }
    
    //Comprueba que los campos password y repeatPassword coinciden
    if(document.getElementById("password").value!=document.getElementById("repeatPassword").value)
    {
        document.getElementById("errorPassIguales").style.display="inline";
        document.getElementById("password").value="";
        document.getElementById("repeatPassword").value="";
        document.getElementById("password").focus();
        return false;
    }
    else
    {
        document.getElementById("errorPassIguales").style.display="none";
    }
    //Comprueba que no esta vacio ni tiene espacios el campo email
    if(document.getElementById("email").value.length==0 || /^\s+$/.test(document.getElementById("email").value))
    {
        document.getElementById("errorMail").style.display="inline";
        document.getElementById("email").focus();
        return false;
    }
    else
    {
        document.getElementById("errorMail").style.display="none";
    }

    document.registroForm.submit();
}

//Funcion para validar los campos del registro
function validarFormVerConciertos()
{
    //Comprobamos si el campo mayorAforo no es nulo, y tratamos de convertirlo a Integer
    //Si al convertir no es numero, mostramos el error
    if (document.getElementById("mayorAforo").value.length!=0)
    {
        valor = parseInt(document.getElementById("mayorAforo").value);
        if (isNaN(valor) || valor<0){
            document.getElementById("errorMayorAforo").style.display="inline";
            document.getElementById("mayorAforo").focus();
            return false;
        }
    }
    else
    {
        document.getElementById("errorMayorAforo").style.display="none";   
    }
    
    //Comprobamos si el campo menorAforo no es nulo, y tratamos de convertirlo a Integer
    //Si al convertir no es numero, mostramos el error
    if (document.getElementById("menorAforo").value.length!=0)
    {
        valor = parseInt(document.getElementById("menorAforo").value);
        if (isNaN(valor) || valor<0)
        {
            document.getElementById("errorMenorAforo").style.display="inline";
            document.getElementById("menorAforo").focus();
            return false;
        }
    }
    else
    {
        document.getElementById("errorMenorAforo").style.display="none";
    }
        
    //Comprobamos si el campo mayorPrecio no es nulo, y tratamos de convertirlo a Float
    //Si al convertir no es numero, mostramos el error
    if (document.getElementById("mayorPrecio").value.length!=0)
    {
        valor = parseFloat(document.getElementById("mayorPrecio").value);
        if (isNaN(valor) || valor<0)
        {
            document.getElementById("errorMayorPrecio").style.display="inline";
            document.getElementById("mayorPrecio").focus();
            return false;
        }
    }
    else
    {
        document.getElementById("errorMayorPrecio").style.display="none";
    }
        
    //Comprobamos si el campo menorPrecio no es nulo, y tratamos de convertirlo a Float
    //Si al convertir no es numero, mostramos el error
    if (document.getElementById("menorPrecio").value.length!=0)
    {
        valor = parseFloat(document.getElementById("menorPrecio").value);
        if (isNaN(valor) || valor<0)
        {
            document.getElementById("errorMenorPrecio").style.display="inline";
            document.getElementById("menorPrecio").focus();
            return false;
        }
    }
    else
    {
        document.getElementById("errorMenorPrecio").style.display="none";
    }
    
    //Si todos los campos estan correctamente, se envia el formulario
    document.verConciertosForm.submit();
}

//Funcion para validar el campo credito del formulario agregarCredito
function validarFormAgregarCredito()
{
    //Comprueba que no esta vacio el campo credito
    //Si no esta vacio, comprueba si es numero y si es asi, si es positivo o negativo
    //En caso de numero y positivo es correcto, sino devuelve error
    if (document.getElementById("credito").value.length==0)
    {
        document.getElementById("errorCredito").innerHTML="Campo vac&iacute;o";
        document.getElementById("errorCredito").style.display="inline";
        document.getElementById("credito").focus();
        return false;
    }
    else if(document.getElementById("credito").value.length!=0)
    {
        valor = parseFloat(document.getElementById("credito").value);
        if (isNaN(valor) || valor<=0)
        {
            document.getElementById("errorCredito").innerHTML="Dato err&oacute;neo";
            document.getElementById("errorCredito").style.display="inline";
            document.getElementById("credito").focus();
            return false;
        }
        else
        {
            document.getElementById("errorCredito").style.display="none";
            document.agregarCreditoForm.submit();
        }
    }
}

//Funcion para validar el campo cantidad del formulario comprarEntrada
function validarFormComprarEntradas()
{
    //Comprueba que no esta vacio el campo cantidadEntradas
    //Si no esta vacio, comprueba si es numero y si es asi, si es positivo o negativo
    //En caso de numero y positivo es correcto, sino devuelve error
    if (document.getElementById("cantidadEntradas").value.length==0)
    {
        document.getElementById("errorCantidadEntradas").innerHTML="Campo vac&iacute;o";
        document.getElementById("errorCantidadEntradas").style.display="inline";
        document.getElementById("cantidadEntradas").focus();
        return false;
    }
    else if(document.getElementById("cantidadEntradas").value.length!=0)
    {
        valor = parseFloat(document.getElementById("cantidadEntradas").value);
        if (isNaN(valor) || valor<=0){
            document.getElementById("errorCantidadEntradas").innerHTML="Dato err&oacute;neo";
            document.getElementById("errorCantidadEntradas").style.display="inline";
            document.getElementById("cantidadEntradas").focus();
            return false;
        }
        else
        {
            document.getElementById("errorCantidadEntradas").style.display="none";
            document.comprarEntradasForm.submit();
        }
    }
}